<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
    <head>
        <title>CruiseControl.NET : File Labeller</title>
	    <link rel="stylesheet" href="styles/site.css" type="text/css" />
        <META http-equiv="Content-Type" content="text/html; charset=UTF-8">	    
    </head>

    <body>
	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
		    <tr>
			    <td valign="top" class="pagebody">
				    <div class="pageheader">
					    <span class="pagetitle">
                            CruiseControl.NET : File Labeller
                                                    </span>
				    </div>
				    <div class="pagesubheading">
					    This page last changed on Jul 01, 2009 by <font color="#0050B2">csut017</font>.
				    </div>

				    <h3><a name="FileLabeller-FileLabeller"></a>File Labeller</h3>

<p>The File Labeller is used to generate labels based on the content of a disk file.  The labeller is configured with the location of the file, and it reads the file content to generate the label for CCNet.  The file is read just before the first pre-build task is executed.</p>

<h4><a name="FileLabeller-Version"></a>Version</h4>

<p>This labeller is available from release 1.3.0.</p>

<h4><a name="FileLabeller-Example"></a>Example</h4>

<p>The following configuration would prefix all labels with the string 'Foo-', so the if the file contains '213', the build would be labelled 'Foo-213'.</p>

<p><div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
<pre class="code-xml"><span class="code-tag">&lt;project&gt;</span>
   <span class="code-tag">&lt;labeller type=<span class="code-quote">"fileLabeller"</span>&gt;</span>
     <span class="code-tag">&lt;labelFilePath&gt;</span>xxx<span class="code-tag">&lt;/labelFilePath&gt;</span>
     <span class="code-tag">&lt;prefix&gt;</span>Foo-<span class="code-tag">&lt;/prefix&gt;</span>
     <span class="code-tag">&lt;allowDuplicateSubsequentLabels&gt;</span>true<span class="code-tag">&lt;/allowDuplicateSubsequentLabels&gt;</span>
   <span class="code-tag">&lt;/labeller&gt;</span>
   <span class="code-tag"><span class="code-comment">&lt;!-- Other project configuration to go here --&gt;</span></span>
<span class="code-tag">&lt;/project&gt;</span></pre>
</div></div><br clear="all" /> <br clear="all" />
<br clear="all" /></p>

<h3><a name="FileLabeller-ConfigurationElements%3A"></a>Configuration Elements:</h3>

<table class='confluenceTable'><tbody>
<tr>
<th class='confluenceTh'> Node </th>
<th class='confluenceTh'> Description </th>
<th class='confluenceTh'> Type </th>
<th class='confluenceTh'> Required </th>
<th class='confluenceTh'> Default </th>
<th class='confluenceTh'> Version </th>
</tr>
<tr>
<td class='confluenceTd'> prefix </td>
<td class='confluenceTd'> Any string to be put in front of all labels </td>
<td class='confluenceTd'> string </td>
<td class='confluenceTd'> false </td>
<td class='confluenceTd'> empty string <br clear="all" /> </td>
<td class='confluenceTd'>&nbsp;</td>
</tr>
<tr>
<td class='confluenceTd'> labelFilePath </td>
<td class='confluenceTd'> The pathname of the file to read. This can be the absolute path or one relative to the project's working directory. <br clear="all" /> </td>
<td class='confluenceTd'> string </td>
<td class='confluenceTd'> true </td>
<td class='confluenceTd'> n/a </td>
<td class='confluenceTd'>&nbsp;</td>
</tr>
<tr>
<td class='confluenceTd'> allowDuplicateSubsequentLabels </td>
<td class='confluenceTd'> If true, , a label which matches the immediately previous label will be generated as is.  Otherwise it will have a version number appended (<em>e.g.</em>, <em>prefix</em><em>label</em>&#45;1, <em>prefix</em><em>label</em>&#45;2). </td>
<td class='confluenceTd'> boolean </td>
<td class='confluenceTd'> false </td>
<td class='confluenceTd'> true </td>
<td class='confluenceTd'>&nbsp;</td>
</tr>
<tr>
<td class='confluenceTd'> dynamicValues </td>
<td class='confluenceTd'> Any dynamic parameters to be used. See <a href="Dynamic Parameters.html" title="Dynamic Parameters">Dynamic Parameters</a> </td>
<td class='confluenceTd'> Dynamic values array - see <a href="Dynamic Parameters.html" title="Dynamic Parameters">Dynamic Parameters</a> </td>
<td class='confluenceTd'> No </td>
<td class='confluenceTd'> <em>None</em> </td>
<td class='confluenceTd'> 1.5.0 </td>
</tr>
</tbody></table>

				    
                    			    </td>
		    </tr>
	    </table>
	    <table border="0" cellpadding="0" cellspacing="0" width="100%">
			<tr>
				<td height="12" background="http://confluence.public.thoughtworks.org//images/border/border_bottom.gif"><img src="images/border/spacer.gif" width="1" height="1" border="0"/></td>
			</tr>
		    <tr>
			    <td align="center"><font color="grey">Document generated by Confluence on Sep 29, 2009 20:59</font></td>
		    </tr>
	    </table>
    </body>
</html>